/*
Id:[86]	
取石子 (15分)
题目内容:
有两堆石子，数量任意，可以不同。游戏开始由两个人轮流取石子。游戏规定，每次有两种不同的取法，一是可以在任意的一堆中
取走任意多的石子；二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数
目，如果轮到你先取，假设双方都采取最好的策略，问最后你是胜者还是败者。
输入描述:
输入包含若干行，表示若干种石子的初始情况，其中每一行包含两个非负整数a和b，表示两堆石子的数目，a和b都不大于
1,000,000,000。
输出描述:
输出对应也有若干行，每行包含一个数字1或0，如果最后你是胜者，则为1，反之，则为0。
输入样例:
2 1
8 4
4 7
输出样例:
0
1
0
*/

/*
威佐夫博弈，对于一个状态(a, b)如果他满足(a, b)组成的矩形为黄金矩形那么先手的人就必输。
组成黄金矩形，那么他的长宽比应该为（b为长， a为宽）
(a / (b - a)) = (1 + sqrt(5)) / 2 
 */

#include <iostream> 
#include <cmath>
using namespace std;

int swap(int &a, int &b){
	int t;
	t = a;
	a = b;
	b = t;
	return 0;
}

int main(){
	int a, b;
	while(cin >> a >> b){
		if(b < a)
			swap(a, b);
		double k = b - a;
		int s = k * (sqrt(5) + 1) / 2;
		if(s == a)
			cout << 0 << endl;
		else 
			cout << 1 << endl;
	}
    return 0;
}
